//
//  HMVisitorTableViewController.swift
//  Weibo24
//
//  Created by apple on 17/3/27.
//  Copyright © 2017年 itheima. All rights reserved.
//

import UIKit
//  访客视图控制器
class HMVisitorTableViewController: UITableViewController {

    //  是否登录的标记
    var isLogin: Bool = HMUserAccountViewModel.sharedViewModel.isLogin
    //  访客视图信息
    var visitorView: HMVisitorView?
    
    //  自定义view,重写的目的
    override func loadView() {
        if isLogin {
            //  登录情况下,使用系统提供视图(tableView)
            super.loadView()
        } else {
            //  自定义访客视图
            visitorView = HMVisitorView()
            //  设置访客视图的代理对象
            visitorView?.delegate = self
            //  设置闭包,使用self的时候注意循环引用
            visitorView?.loginClosure = { [weak self] in
//                print(self)
                print("我是闭包调用过来的")
                self?.enterOAuth()
            }
            view = visitorView
            //  没有登录设置导航栏按钮
            setupNavUI()
        }
    }
    
  

    //  设置导航栏按钮
    func setupNavUI() {
        
        navigationItem.leftBarButtonItem = UIBarButtonItem(title: "注册", target: self, action: #selector(registerButtonAction))
        navigationItem.rightBarButtonItem = UIBarButtonItem(title: "登录", target: self, action: #selector(loginButtonAction))
    }

    //  MARK: ---  注册和登录按钮的点击事件
    func registerButtonAction() {
        print("注册")
        enterOAuth()
    }

    func loginButtonAction() {
        print("登录")
        enterOAuth()
    }


    override func viewDidLoad() {
        super.viewDidLoad()

    }

    //  进入OAuth登录界面
    private func enterOAuth() {
        let oAuthVC = HMOAuthViewController()
        
        let nav = HMNavigationViewController(rootViewController: oAuthVC)
        self.present(nav, animated: true, completion: nil)
    }
    
    
}

//  MARK: ---访客视图代理方法的实现
extension HMVisitorTableViewController: HMVisitorViewDelegate {
    
    func loginOperation() {
        print("我是代理对象调用过来的")
        //  弹出登录界面
    }
    
    
}




